Systems and methods to enhance 3-d prestack seismic data based on non-linear beamforming in the cross-spread domain

ABSTRACT

The disclosure provides systems and methods to enhance pre-stack data for seismic data analysis by: sorting the reflection seismic data acquired from cross-spread gathers into sets of data sections; performing data enhancement on the sets of data sections to generate enhanced traces by: (i) applying forward normal-moveout (NMO) corrections such that arrival times of primary reflection events become more flat, (ii) estimating beamforming parameters including a nonlinear traveltime surface and a summation aperture, (iii) generating enhanced traces that combine contributions from original traces in the sets of data sections, and (iv) applying inverse NMO corrections to the enhanced traces such that temporal rearrangements due to the forward NMO corrections are undone.

CLAIM OF PRIORITY

This application claims priority to International Patent Application No.PCT/RU2018/000079 filed on Feb. 8, 2018, the entire contents of whichare hereby incorporated by reference.

BACKGROUND

Seismic data contains information about various geological features.Seismic data can be obtained from seismic surveys to image geologicalstructures of a subterranean region. Poststack seismic data can includetwo-dimensional (2D) seismic slices or three-dimensional (3D) seismicvolumes. Prestack data can have higher dimensions including source andreceiver positions arranged in orthogonal directions. Seismic data canbe used to identify geologic structural and stratigraphic features, suchas subsurface faults, and unconformities. For a geophysicist, complexgeology is characterized by an abrupt or sharp contrast in lateral orvertical velocity (for example a sudden change in rock type or lithologywhich causes a sharp change in seismic wave velocity). Some examples ofwhat a geophysicist considers complex geology are: faulting, folding,(some) fracturing, salt bodies, and unconformities.

SUMMARY

The present disclosure describes a new method for enhancement of 3Dprestack land seismic data corrupted by challenging near-surface oroverburden. Implementations may include a first stage of sorting seismicdata obtained by typical land orthogonal acquisition into a set ofcross-spread gathers. These implementations may include a second stageof applying, for each cross-spread gather, forward normal-moveoutcorrections (NMO) to make primary reflections arrivals more flat thanbefore the application. These implementations may include a third stageof performing, for each cross-spread gather, a procedure for estimationbeamforming parameters that define nonlinear traveltime surface foroptimal stacking. These implementations may include a fourth stage ofperforming beamforming by fast and efficient local stacking of traces ineach cross-spread gather along the estimated traveltime surface. Theseimplementations may include a fifth stage of applying inverse NMOcorrection to restore temporal arrangement of the original data tracesprior to the forward moveout. Through the sequence of steps, someimplementations are free from classical assumptions about thehyperbolicity of reflective events from layered structures. Yet, theseimplementations can still use the available stacking velocity as a guideto enhance primary reflections and to suppress other unwanted eventssuch as multiples. As demonstrated by feasibility studies on real data,these implementations can make full use of the vast amount of seismicdata from modern high-channel count sensor systems, thereby revealingmore usable information from the modern land data surveys.

Implementations according to the present disclosure may be realized incomputer implemented methods, hardware computing systems, and tangiblecomputer readable media. For example, a system of one or more computerscan be configured to performed particular actions by virtue of havingsoftware, firmware, hardware, or a combination of them installed on thesystem that in operation causes or cause the system to perform theactions. One or more computer programs can be configured to performparticular actions by virtue of including instructions that, whenexecuted by data processing apparatus, cause the apparatus to performthe actions.

The subject matter described in this specification can be implemented torealize one or more of the following advantages. The described subjectmatter can improve the coherency and visibility of reflected events andoverall improve signal to noise ratio. This may lead to better velocityanalysis results and other improvements during prestack data processingsteps such as scaling, deconvolution and residual sattic corrections.Other advantages will be apparent to those of ordinary skill in the art.

The details of one or more implementations of the subject matter of thisspecification are set forth in the description, the claims, and theaccompanying drawings. Other features, aspects, and advantages of thesubject matter will become apparent from the description, the claims,and the accompanying drawings.

DESCRIPTION OF DRAWINGS

FIG. 1 illustrates an example of relative placement of various traces(including seismic traces, parametric traces, and an enhanced trace) andvarious apertures (including the summation aperture, the operatoraperture, and the estimation aperture) on a grid of X (horizontal) and Y(vertical) coordinates for analyzing and enhancing reflection seismicdata.

FIG. 2 is a diagram illustrating an example of a configuration forplacing a source line to transmit acoustic impulses for probing theearth and a receiver line for receiving acoustic reflections in across-spread seismic gather.

FIG. 3 is a diagram showing an example of trace distribution foracquiring reflection seismic signals in the plane representing areceiver placement on the X (horizontal) coordinate and a sourceplacement on the Y (vertical) coordinate for the cross-spread gather ofFIG. 2.

FIG. 4A shows an example of a fragment of cross-spread gather tracesbefore enhancement.

FIG. 4B shows the example of the fragment of cross-spread gather tracesafter enhancements according to some implementations of the presentdisclosure.

FIG. 5A is a flowchart showing an example of data enhancement accordingto some implementations of the present disclosure.

FIG. 5B is a diagram showing an example of high-level pseudocodes forsome implementations of the present disclosure.

FIG. 6 is a block diagram illustrating an example of a computer systemused to provide computational functionalities associated with describedalgorithms, methods, functions, processes, flows, and procedures,according to an implementation of the present disclosure.

Like reference numbers and designations in the various drawings indicatelike elements.

DETAILED DESCRIPTION

A seismic method has three principal applications, namely, delineationof near-surface geology for engineering studies, and coal and mineralexploration within a depth of up to about 1 kilometer (km) (known asengineering seismology); hydrocarbon exploration and development withindepth of approximately 10 km (known as exploration seismology); andinvestigation of the earth's crustal structure within a depth ofapproximately 100 km (known as known as earthquake seismology). Areflection seismic method has been used to delineate subsurface geologyin different studies.

A typical reflection seismic method generally involves acquiringreflection seismic data in response to a shot input (for example, fromshot sources that direct acoustic impulses into the earth) and thenanalyzing the reflection seismic data, as acquired from, for example,recording instruments/devices such as hydrophones, to obtain insight ofthe layered structures underneath the earth. An array of shot sourcesand an array of recording instruments may be used. The seismic datarecorded in digital form by each channel of the array of the recordinginstruments are represented by a time series. Processing algorithms canbe designed for and applied to either single channel time series,individually, or multichannel time series.

Some implementations described in this disclosure provide dataenhancement when 3D pre-stack land seismic data is corrupted bychallenging near-surface and overburden conditions. Theseimplementations may search for local coherent events in the data in thecross-spread domain and then perform partial summation along theestimated trajectories. For example, such implementations mayincorporate a first step of sorting seismic data obtained by landorthogonal acquisition (in which the shot sources and the receivinginstruments may be arranged in line shapes that are substantiallyorthogonal to each other) into a set of cross-spread gathers. Theseimplementations may incorporate a second step of applying, for eachcross-spread gather, forward normal-moveout corrections (NMO) to makeprimary reflections arrivals more flat than before the NMO correction.These implementations may further incorporate a third step ofperforming, for each cross-spread gather, a procedure for estimatingbeamforming parameters that defines a nonlinear traveltime surface forimproved local stacking. These implementations may additionallyincorporate a fourth step of performing beamforming by fast andefficient local stacking of traces in each cross-spread gather along theestimated traveltime surface. These implementations may subsequentlyincorporate a fifth step of applying inverse NMO correction to restorethe arrangements in the original reflection seismic data prior to theforward moveout. Thereafter, the implementations may proceed withadditional data enhancement such as deconvolution, followed by stackingand migration such that the final processed results are displayed forvisualization. These implementations may advantageously operate withoutthe classical assumptions about hyperbolicity of seismic events.However, such implementations may use the available stacking velocity asa guide to enhance primary reflections and to suppress other unwantedevents such as multiples. Feasibility studies demonstratively showpromising results from real data. Indeed, various implementations arefully conducive for modern reflection seismic data acquired withhigh-channel count. As such, these implementations can advantageouslymake full use modern signal-sensor data that are densely sampled andvoluminous in nature.

In this disclosure, FIGS. 1 to 3 are devoted to illustrations thatprovide the context as well as the general framework for someimplementations. FIGS. 4A and 4B demonstrate the proof of feasibilityfor some implementations described in this disclosure. FIGS. 5A and 5Bshow various operational aspects of the disclosed implementations basedon the general framework provided in FIGS. 1-3. FIG. 6 provides ageneral architecture for conducting some implementations on computers.

For context, modern 3D land seismic data acquisition is moving fromsparse grids of large source/receiver arrays to denser grids of lighterarrays or point-source, point-receiver systems. Referring to FIGS. 1 to3, an example 100 is illustrated in FIG. 1 showing the schematicplacement of subset of seismic traces (102) on a 2D plane for analyzingand enhancing reflection seismic data. In this diagram, each seismictrace corresponds to a particular placement of the shot source and aparticular placement of the recording instrument, as arranged on the 2Dplane. This diagram provides a general framework for illustrating theoperational aspects of various implementations including parametrictraces 103, and an enhanced trace 104 and various apertures (includingthe summation aperture 105, the estimation aperture 106, and theoperator aperture 107).

FIG. 2 is a diagram 200 illustrating an example of a configuration forplacing a source line 202 of source elements for transmitting acousticimpulses into the earth and a receiver line 204 of recording instrumentsfor recording acoustic signals. This configuration may be known as across-spread gather. As illustrated in FIG. 2, each source, A through N,on the source line (also known as an inline) represents a seismic sourceconfigured to generate the seismic wave in the underlying earth; andeach receiver, I through XIV, on the receiver line (also known ascrossline) represents a recording instrument/device such as a geophoneconfigured to record seismic reflections in response to the excitation.Each excitation may involve one source device on the source line; whileall receiver devices on the receiver line may record the reflectionacoustic signal in response to the particular excitation. The excitationby one source device and the recording events for all receiver devicesmay be repeated until all source devices have been used. This sequenceof excitation and recording event(s) may be known as a cross-spreadgather. FIG. 3 is a diagram showing an example of trace distribution inthe plane representing source Y (vertical axis) and receiver X(horizontal axis) coordinates for the cross-spread gather of FIG. 2.Here, each trace manifests as one dot on the grid. As discussed, eachtrace corresponds to one recording from a recording device (representedby a receiver position along the horizontal X axis) in response to shotinput from a source device (represented by a shot position along thevertical Y axis). Modern land seismic data are characterized by fine anduniform sampling along source and receiver lines, as evidenced by thevast number of dots on the grid in FIG. 3 having dense distribution inboth vertical and horizontal directions without missing holes.

Processing of these traces generally involve three components—dataenhancement, stacking, and migration. A typical data enhancement mayinclude deconvolution that often improves temporal resolution bycollapsing the seismic wavelet to approximately a spike and suppressingreverberations on some field data. Stacking may generally be accompaniedby velocity analysis, normal-moveout (NMO), and statics corrections.Stacking can enhance consistent reflective events from multiplerecordings while attenuating uncorrelated noise, thereby increasing thesignal to noise ratio (SNR). Stacking also can attenuate a large part ofthe coherent noise in the data, such as guided waves and multiples. Thenormal moveout (NMO) correction before stacking is done using theprimary velocity function based on the hyperbolic moveout assumption, aswill be discussed in more detail. Because multiples have larger moveoutthan primaries, the multiples are undercorrected and, hence, attenuatedduring stacking. Data acquired on land must be corrected for elevationdifferences at shot and receiver locations and traveltime distortionscaused by a near-surface weathering layer. The corrections usually arein the form of vertical traveltime shifts to a flat datum level (staticscorrections). Because of uncertainties in near-surface model estimation,residual statics may need to be removed from data before stacking. Thelast component, migration, may collapse diffractions and moves dippingevents to their putative subsurface locations. In other words, migrationis an imaging process and also a deterministic process.

As mentioned earlier, modern 3D land seismic data acquisition is movingfrom sparse grids of large source/receiver arrays to denser grids oflighter arrays or point-source, point-receiver systems. Such 3D landacquisition improves sampling of the seismic wave field whilepotentially reducing signal-to-noise ratio in the acquired acousticsignals. In principle, with better sampling of signal and noise improvedseismic images can be obtained. Achieving such improvement in practicecan be challenging because the huge amounts of data may exhibit lowsignal-to-noise ratio (SNR). Conventional time processing tools such assurface-consistent scaling, statics correction, deconvolution andvelocity analysis may require reliable pre-stack migration performed onthe acquired 3D land seismic data. Adapting such time processing toolsto the modern datasets acquired with small group size often leads tounreliable results because the derived operators may be based on noisebut not necessarily on signal. To make full use of the densely spacedacquisition grid with high channel counts, as evidenced by theillustration in FIG. 3, signal enhancement in the pre-stack data can beperformed.

To improve the signal-to-noise ratio (SNR) in the pre-stack data, whilepreserving the original geometry, some implementations may perform localsummation of the neighboring traces gathered from the original dataset.Such implementations described in this disclosure may perform nonlinearbeamforming to enhance the 3D pre-stack data acquired with modern landseismic orthogonal surveys. As explained in more detail later, theseimplementations may perform a variant of delay-and-sum (DAS)beamforming, which is a non-linear function of the distance between asource device and a receiver device.

In one example, the neighboring traces may be along predefinedtrajectories which correspond to locally coherent reflection arrivalsand can be expressed as:

$\begin{matrix}{{{u\left( {x_{0},y_{0},t_{0}} \right)} = {\sum\limits_{{({x,y})} \in B_{0}}{{w\left( {x,y} \right)}{u\left( {x,y,{t_{0} + {\Delta \; {t\left( {x,y} \right)}}}} \right)}}}},} & (1)\end{matrix}$

where u (x, y, t) represents a trace with two spatial coordinates x andy. The coordinates of the output trace after the beamforming procedureare given by x₀, y₀. In this example, The summation is performed over alocal region B₀ around the output trace in 2D plane along a trajectorywith a moveout term of Δt(x, y). In this example, the output tracecorresponds to enhancement trace 103 and the local region B₀ around theoutput trace corresponds to the summation aperture 105. In someinstances, the wavefront can be locally approximated by a second-ordersurface providing the following relation for this moveout term:

Δt=t(x,y)−t ₀(x ₀ ,y ₀)=AΔx+BΔy+CΔxΔy+DΔx ² +EΔy ²,  (2)

where A, B, C, D, E are unknown beamforming coefficients and Δx and Δyrepresent shifts of the summed trace with respect to the output trace.The beamforming weights w(x, y) can be chosen in a number of ways andare used to preserve signal energy and to suppress noise. Thebeamforming coefficients A, B, C, D and E have particular physicalmeaning in various models of mild complexity. Some implementations mayfirst compute a two-parametric scan of A and D by setting Δy to zero.These implementations may then follow up with another scan of B and E bysetting Δx to zero. Finally, these implementations may fix the estimatedfour coefficients and search for optimal value of C. To improve theresults and efficiency of the search, the implementations may use theoperator-oriented approach in which the moveout coefficients areestimated on a coarse grid in 2D plane by using all traces fallinginside an estimation aperture 106, as illustrated in FIG. 1. After theestimation, these implementations may construct operators around allparametric traces. For each actual trace inside the operator aperture107, as illustrated in FIG. 1, the traces falling inside the summationaperture are summed up according to equation (1). This operator-orientedapproach may bring signal in each sample from different estimatedoperators, thereby providing a boost to the enhanced trace and a partialresolution of conflicting dips.

FIGS. 4A and 4B respectively show an example of a fragment ofcross-spread gather traces before and after enhancement of 3D pre-stackland seismic data according to some implementations of the presentdisclosure. This fragment includes three (3) 2D crossline sections. Theimprovement comes in at least two folds. First, the reflected eventsbecome more visible and coherent. Second, the noisy traces weresuppressed in each 2D crossline section after the enhancement. Theimprovement may largely stem from the enhancement performed by variousimplementations to preserve azimuth contributions.

Specifically, implementations that enhance 3D seismic data incommon-offset domain may proceed by staying the spatial coordinates inequation (1) for inline and cross-line common-midpoint positions.Considering modern orthogonal land seismic acquisitions, such approachmay not be azimuth preserving, meaning that the different azimuths maybe merged during the enhancement process of these implementations.Preserving of azimuthal contributions, however, can characterizehorizontal transverse anisotropy which can provide insight into, forexample, fracture orientations inside a reservoir. A straightforwardapproach to use azimuth-dependent common offset gathers leads to verysparse gathers that do not provide regular and sufficient tracesdistribution. Implementations described in this disclosure can overcomesuch deficiencies, thereby improving the quality of reflection seismicdata such that more details of the earth layers can be revealed.

In more detail, to achieve data-enhancement in cross-spread domain, someimplementations described in this disclosure may consider the initial 3Dseismic dataset as a five-dimensional array, where each trace ischaracterized by shot coordinates X_(S), Y_(S), receiver coordinatesX_(G), Y_(G), and time t. The first stage of these implementations issorting of the 3D dataset into a number of so called “cross-spread”gathers as illustrated earlier in FIG. 2. The cross-spread gather is asection of initial five (5) dimensional data cube with X_(S)=const,Y_(G)=const. Traces in this gather are characterized by threecoordinates (Y_(S), X_(G), t). In modern land surveys, such featureprovides dense and quite regular traces coverage of the source andreceive space in the 2D plane (Y_(S), X_(G)), as illustrated earlier inFIG. 3. In some instances, this 2D plane provides a spatial index toperform nonlinear beamforming according to equations (2) and (3).

One advantage of the common-offset domain is that, in models of mildcomplexity, events are affected mostly by structural features of thesubsurface, leading to an efficient search of optimal summationtrajectories. In comparison, in the cross-spread domain, such eventshave large travel-time moveouts that can significantly slow down searchof optimal parameters. To address this apparent hindrance,implementations described in this disclosure may perform normal moveoutcorrection (NMO) before data enhancement and subsequently performinverse NMO after data enhancement. The NMO correction makes thereflected events more or less flat and improves efficiency of thesearching algorithm in cross-spread domain. Precise NMO velocityestimation may not be necessary because the implementations are notlimited to flat events only. The intervals for possible dips andcurvatures of the events may be predefined by the user. In fact,implementations incorporating the NMO correction provides flexible dataenhancement for modern data sets from densely sampled grids. To improveaccuracy of velocity estimation, the user can reduce the searchingintervals and enhance only the primary reflections and suppress unwantedevents such as multiples. Conversely, when the available velocityestimation is not accurate, the user can enhance wider spectrum ofevents and suppress the unwanted ones at the later stages of theprocedure.

FIG. 5A shows an example of a flow chart 500 for some implementations ofdata enhancement before stacking. Initially, a computer processor mayaccess reflection seismic data (501). The volume of reflection seismicdata may be acquired by using source devices and receiver devices placedin a mesh structure that covers an area, as illustrated earlier in FIG.3. The processor may then sort seismic data obtained by such landorthogonal acquisition into a set of cross-spread gathers (502). Thecross-spread gathers may involve a source line and a receiver line, asillustrated earlier in FIG. 2. The processor may then apply, for eachcross-spread gather, normal-moveout corrections (NMO) to make primaryreflections arrivals more or less flat (503). Here, the processor mayperform, for each cross-spread gather, a procedure for estimatingbeamforming parameters that defines a nonlinear traveltime surface forimproved local stacking (504). Examples of such estimation have beendisclosed earlier, for example, in association with FIG. 1. Theprocessor may then perform beamforming by fast and efficient localstacking of traces in each cross-spread gather (505) along the estimatedtraveltime surface, for example, from the summation aperture. Theprocessor may then apply inverse NMO correction to restore temporalarrangements from the original reflection seismic data prior to moveout(506). In this manner, the azimuth contributions may be preserved whilethe computation in the cross-spread domain remains efficient because NMOcomputations are limited for local stacking from a summation aperture.In some implementations, the processor may then pursue additional dataenhancement (507). Examples of additional data enhancement may includedeconvolution. Thereafter, the processor may perform stacking based onthe enhanced data (508), and migration to generate images of the layeredstructures with depth information resolved (509). These images of thelayered structures may then be displayed (510).

Modern land data surveys include huge amount of traces and can reachhundreds megabytes of digital data or more. This sheer size can requireoptimization and parallelization of data-processing for analysis. Someimplementations may incorporate parallel and independent enhancement ofdifferent cross-spread gathers on separate cluster nodes on, forexample, a parallel computer. To optimize calculations for eachcross-spread gather, some implementations may incorporate an efficient“parameter trace oriented” summation algorithm. This summation algorithmruns on the last stage of the operator-oriented data-enhancementprocedure (for example, step 505 in FIG. 5A) and performs localsummation of neighboring traces to produce an output dataset withincreased signal-to-noise ratio. In these implementations, the signal isfirst accumulated in the operator trace and then moved to the targettrace, Compared to the straightforward approach where the signal isaccumulated in the target trace from the very beginning, someimplementation described in this disclosure may allow a speedup ofseveral factors.

In some implementations, the “parameter trace oriented” summationalgorithm starts from a loop over all parameter traces (as illustratedby parameter trace 104 for estimating optimal moveout in FIG. 1). Asillustrated in the diagram 511 from FIG. 5B, during this stage, thecurrent parameter trace is initialized with zeros (as illustrated inloop 512 of FIG. 5B) and two temporary arrays DATAPAIR and INDPAIR arefilled (as illustrated in loop 513 of FIG. 5B). Sizes of these arraysmay be equal to the number of input traces inside the estimationaperture multiplied by the number of time samples in the operator trace(as illustrated in loop 514 of FIG. 5B). The INDPAIR table is filled byindexes of time samples where local moveout surfaces—as outline byequation (2)—from the current operator trace intersect the input tracesinside the aperture (as illustrated in loops 515 and 516). The number ofthese traveltime surfaces is equal to the number of time samples in theoperator trace. The DATAPAIR table is filled by the values of seismictrace taken at the intersection times. When the intersection occursbetween actual time samples, an interpolation may be performed to takethis intersection into account. After the DATAPAIR and INDPAIR tablesare filled, the actual summation is done inside two other embeddedloops. The first of these loops is running over target traces from theestimation aperture (as illustrated by estimation aperture 106 of FIG.1). If the current target trace is within the operator aperture (asillustrated by operator aperture 107 from FIG. 1) relative to thecurrent operator trace, the execution is passed to the next loop overinput traces. Thereafter, if the current input trace is within thesummation aperture (as illustrated by summation aperture 105 fromFIG. 1) relative from the current target trace, the values for thisinput trace from DATAPAIR array are added to the current operator trace.After all input traces are checked, the summation algorithm brings thesignal from the calculated operator trace to the target trace using theINDPAIR array. In the illustrations described earlier, the target outputtraces coincide with the input traces. When target output traces do notcoincide with the input traces, a straightforward modification canaccount for the variation.

FIG. 6 is a block diagram illustrating an example of a computer system600 used to provide computational functionalities associated withdescribed algorithms, methods, functions, processes, flows, andprocedures, according to an implementation of the present disclosure.The illustrated computer 602 is intended to encompass any computingdevice such as a server, desktop computer, laptop/notebook computer,wireless data port, smart phone, personal data assistant (PDA), tabletcomputing device, one or more processors within these devices, anothercomputing device, or a combination of computing devices, includingphysical or virtual instances of the computing device, or a combinationof physical or virtual instances of the computing device. Additionally,the computer 602 can comprise a computer that includes an input device,such as a keypad, keyboard, touch screen, another input device, or acombination of input devices that can accept user information, and anoutput device that conveys information associated with the operation ofthe computer 602, including digital data, visual, audio, another type ofinformation, or a combination of types of information, on agraphical-type user interface (UI) (or GUI) or other UI.

The computer 602 can serve in a role in a computer system as a client,network component, a server, a database or another persistency, anotherrole, or a combination of roles for performing the subject matterdescribed in the present disclosure. The illustrated computer 602 iscommunicably coupled with a network 630. In some implementations, one ormore components of the computer 602 can be configured to operate withinan environment, including cloud-computing-based, local, global, anotherenvironment, or a combination of environments.

The computer 602 is an electronic computing device operable to receive,transmit, process, store, or manage data and information associated withthe described subject matter. According to some implementations, thecomputer 602 can also include or be communicably coupled with a server,including an application server, e-mail server, web server, cachingserver, streaming data server, another server, or a combination ofservers.

The computer 602 can receive requests over network 630 (for example,from a client software application executing on another computer 602)and respond to the received requests by processing the received requestsusing a software application or a combination of software applications.In addition, requests can also be sent to the computer 602 from internalusers, external or third-parties, or other entities, individuals,systems, or computers.

Each of the components of the computer 602 can communicate using asystem bus 603. In some implementations, any or all of the components ofthe computer 602, including hardware, software, or a combination ofhardware and software, can interface over the system bus 603 using anapplication programming interface (API) 612, a service layer 613, or acombination of the API 612 and service layer 613. The API 612 caninclude specifications for routines, data structures, and objectclasses. The API 612 can be either computer-language independent ordependent and refer to a complete interface, a single function, or evena set of APIs. The service layer 613 provides software services to thecomputer 602 or other components (whether illustrated or not) that arecommunicably coupled to the computer 602. The functionality of thecomputer 602 can be accessible for all service consumers using thisservice layer. Software services, such as those provided by the servicelayer 613, provide reusable, defined functionalities through a definedinterface. For example, the interface can be software written in JAVA,C++, another computing language, or a combination of computing languagesproviding data in extensible markup language (XML) format, anotherformat, or a combination of formats. While illustrated as an integratedcomponent of the computer 602, alternative implementations canillustrate the API 612 or the service layer 613 as stand-alonecomponents in relation to other components of the computer 602 or othercomponents (whether illustrated or not) that are communicably coupled tothe computer 602. Moreover, any or all parts of the API 612 or theservice layer 613 can be implemented as a child or a sub-module ofanother software module, enterprise application, or hardware modulewithout departing from the scope of the present disclosure.

The computer 602 includes an interface 604. Although illustrated as asingle interface 604 in FIG. 6, two or more interfaces 604 can be usedaccording to particular needs, desires, or particular implementations ofthe computer 602. The interface 604 is used by the computer 602 forcommunicating with another computing system (whether illustrated or not)that is communicatively linked to the network 630 in a distributedenvironment. Generally, the interface 604 is operable to communicatewith the network 630 and comprises logic encoded in software, hardware,or a combination of software and hardware. More specifically, theinterface 604 can comprise software supporting one or more communicationprotocols associated with communications such that the network 630 orinterface's hardware is operable to communicate physical signals withinand outside of the illustrated computer 602.

The computer 602 includes a processor 605. Although illustrated as asingle processor 605 in FIG. 6, two or more processors can be usedaccording to particular needs, desires, or particular implementations ofthe computer 602. Generally, the processor 605 executes instructions andmanipulates data to perform the operations of the computer 602 and anyalgorithms, methods, functions, processes, flows, and procedures asdescribed in the present disclosure.

The computer 602 also includes a database 606 that can hold data for thecomputer 602, another component communicatively linked to the network630 (whether illustrated or not), or a combination of the computer 602and another component. For example, database 606 can be an in-memory,conventional, or another type of database storing data consistent withthe present disclosure. In some implementations, database 606 can be acombination of two or more different database types (for example, ahybrid in-memory and conventional database) according to particularneeds, desires, or particular implementations of the computer 602 andthe described functionality. Although illustrated as a single database606 in FIG. 6, two or more databases of similar or differing types canbe used according to particular needs, desires, or particularimplementations of the computer 602 and the described functionality.While database 606 is illustrated as an integral component of thecomputer 602, in alternative implementations, database 606 can beexternal to the computer 602. As illustrated, the database 606 holds thepreviously described seismic data 616.

The computer 602 also includes a memory 607 that can hold data for thecomputer 602, another component or components communicatively linked tothe network 630 (whether illustrated or not), or a combination of thecomputer 602 and another component. Memory 607 can store any dataconsistent with the present disclosure. In some implementations, memory607 can be a combination of two or more different types of memory (forexample, a combination of semiconductor and magnetic storage) accordingto particular needs, desires, or particular implementations of thecomputer 602 and the described functionality. Although illustrated as asingle memory 607 in FIG. 6, two or more memories 607 or similar ordiffering types can be used according to particular needs, desires, orparticular implementations of the computer 602 and the describedfunctionality. While memory 607 is illustrated as an integral componentof the computer 602, in alternative implementations, memory 607 can beexternal to the computer 602.

The application 608 is an algorithmic software engine providingfunctionality according to particular needs, desires, or particularimplementations of the computer 602, particularly with respect tofunctionality described in the present disclosure. For example,application 608 can serve as one or more components, modules, orapplications. Further, although illustrated as a single application 608,the application 608 can be implemented as multiple applications 608 onthe computer 602. In addition, although illustrated as integral to thecomputer 602, in alternative implementations, the application 608 can beexternal to the computer 602.

The computer 602 can also include a power supply 614. The power supply614 can include a rechargeable or non-rechargeable battery that can beconfigured to be either user- or non-user-replaceable. In someimplementations, the power supply 614 can include power-conversion ormanagement circuits (including recharging, standby, or another powermanagement functionality). In some implementations, the power-supply 614can include a power plug to allow the computer 602 to be plugged into awall socket or another power source to, for example, power the computer602 or recharge a rechargeable battery.

There can be any number of computers 602 associated with, or externalto, a computer system containing computer 602, each computer 602communicating over network 630. Further, the term “client,” “user,” orother appropriate terminology can be used interchangeably, asappropriate, without departing from the scope of the present disclosure.Moreover, the present disclosure contemplates that many users can useone computer 602, or that one user can use multiple computers 602.

Implementations of the subject matter and the functional operationsdescribed in this specification can be implemented in digital electroniccircuitry, in tangibly embodied computer software or firmware, incomputer hardware, including the structures disclosed in thisspecification and their structural equivalents, or in combinations ofone or more of them. Software implementations of the described subjectmatter can be implemented as one or more computer programs, that is, oneor more modules of computer program instructions encoded on a tangible,non-transitory, computer-readable computer-storage medium for executionby, or to control the operation of, data processing apparatus.Alternatively, or additionally, the program instructions can be encodedin/on an artificially generated propagated signal, for example, amachine-generated electrical, optical, or electromagnetic signal that isgenerated to encode information for transmission to a receiver apparatusfor execution by a data processing apparatus. The computer-storagemedium can be a machine-readable storage device, a machine-readablestorage substrate, a random or serial access memory device, or acombination of computer-storage mediums. Configuring one or to morecomputers means that the one or more computers have installed hardware,firmware, or software (or combinations of hardware, firmware, andsoftware) so that when the software is executed by the one or morecomputers, particular computing operations are performed.

The term “real-time,” “real time,” “realtime,” “real (fast) time (RFT),”“near(ly) real-time (NRT),” “quasi real-time,” or similar terms (asunderstood by one of ordinary skill in the art), means that an actionand a response are temporally proximate such that an individualperceives the action and the response occurring substantiallysimultaneously. For example, the time difference for a response todisplay (or for an initiation of a display) of data following theindividual's action to access the data can be less than 1 millisecond(ms), less than 1 second (s), or less than 5 s. While the requested dataneed not be displayed (or initiated for display) instantaneously, it isdisplayed (or initiated for display) without any intentional delay,taking into account processing limitations of a described computingsystem and time required to, for example, gather, accurately measure,analyze, process, store, or transmit the data.

The terms “data processing apparatus,” “computer,” or “electroniccomputer device” (or equivalent as understood by one of ordinary skillin the art) refer to data processing hardware and encompass all kinds ofapparatus, devices, and machines for processing data, including by wayof example, a programmable processor, a computer, or multiple processorsor computers. The apparatus can also be, or further include specialpurpose logic circuitry, for example, a central processing unit (CPU),an FPGA (field programmable gate array), or an ASIC(application-specific integrated circuit). In some implementations, thedata processing apparatus or special purpose logic circuitry (or acombination of the data processing apparatus or special purpose logiccircuitry) can be hardware- or software-based (or a combination of bothhardware- and software-based). The apparatus can optionally include codethat creates an execution environment for computer programs, forexample, code that constitutes processor firmware, a protocol stack, adatabase management system, an operating system, or a combination ofexecution environments. The present disclosure contemplates the use ofdata processing apparatuses with an operating system of some type, forexample LINUX, UNIX, WINDOWS, MAC OS, ANDROID, IOS, another operatingsystem, or a combination of operating systems.

A computer program, which can also be referred to or described as aprogram, software, a software application, a unit, a module, a softwaremodule, a script, code, or other component can be written in any form ofprogramming language, including compiled or interpreted languages, ordeclarative or procedural languages, and it can be deployed in any form,including, for example, as a stand-alone program, module, component, orsubroutine, for use in a computing environment. A computer program can,but need not, correspond to a file in a file system. A program can bestored in a portion of a file that holds other programs or data, forexample, one or more scripts stored in a markup language document, in asingle file dedicated to the program in question, or in multiplecoordinated files, for example, files that store one or more modules,sub-programs, or portions of code. A computer program can be deployed tobe executed on one computer or on multiple computers that are located atone site or distributed across multiple sites and interconnected by acommunication network.

While portions of the programs illustrated in the various figures can beillustrated as individual components, such as units or modules, thatimplement described features and functionality using various objects,methods, or other processes, the programs can instead include a numberof sub-units, sub-modules, third-party services, components, libraries,and other components, as appropriate. Conversely, the features andfunctionality of various components can be combined into singlecomponents, as appropriate. Thresholds used to make computationaldeterminations can be statically, dynamically, or both statically anddynamically determined.

Described methods, processes, or logic flows represent one or moreexamples of functionality consistent with the present disclosure and arenot intended to limit the disclosure to the described or illustratedimplementations, but to be accorded the widest scope consistent withdescribed principles and features. The described methods, processes, orlogic flows can be performed by one or more programmable computersexecuting one or more computer programs to perform functions byoperating on input data and generating output data. The methods,processes, or logic flows can also be performed by, and apparatus canalso be implemented as, special purpose logic circuitry, for example, aCPU, an FPGA, or an ASIC.

Computers for the execution of a computer program can be based ongeneral or special purpose microprocessors, both, or another type ofCPU. Generally, a CPU will receive instructions and data from and writeto a memory. The essential elements of a computer are a CPU, forperforming or executing instructions, and one or more memory devices forstoring instructions and data. Generally, a computer will also include,or be operatively coupled to, receive data from or transfer data to, orboth, one or more mass storage devices for storing data, for example,magnetic, magneto-optical disks, or optical disks. However, a computerneed not have such devices. Moreover, a computer can be embedded inanother device, for example, a mobile telephone, a personal digitalassistant (PDA), a mobile audio or video player, a game console, aglobal positioning system (GPS) receiver, or a portable memory storagedevice.

Non-transitory computer-readable media for storing computer programinstructions and data can include all forms of media and memory devices,magnetic devices, magneto optical disks, and optical memory device.Memory devices include semiconductor memory devices, for example, randomaccess memory (RAM), read-only memory (ROM), phase change memory (PRAM),static random access memory (SRAM), dynamic random access memory (DRAM),erasable programmable read-only memory (EPROM), electrically erasableprogrammable read-only memory (EEPROM), and flash memory devices.Magnetic devices include, for example, tape, cartridges, cassettes,internal/removable disks. Optical memory devices include, for example,digital video disc (DVD), CD-ROM, DVD+/−R, DVD-RAM, DVD-ROM, HD-DVD, andBLURAY, and other optical memory technologies. The memory can storevarious objects or data, including caches, classes, frameworks,applications, modules, backup data, jobs, web pages, web page templates,data structures, database tables, repositories storing dynamicinformation, or other appropriate information including any parameters,variables, algorithms, instructions, rules, constraints, or references.Additionally, the memory can include other appropriate data, such aslogs, policies, security or access data, or reporting files. Theprocessor and the memory can be supplemented by, or incorporated in,special purpose logic circuitry.

To provide for interaction with a user, implementations of the subjectmatter described in this specification can be implemented on a computerhaving a display device, for example, a CRT (cathode ray tube), LCD(liquid crystal display), LED (Light Emitting Diode), or plasma monitor,for displaying information to the user and a keyboard and a pointingdevice, for example, a mouse, trackball, or trackpad by which the usercan provide input to the computer. Input can also be provided to thecomputer using a touchscreen, such as a tablet computer surface withpressure sensitivity, a multi-touch screen using capacitive or electricsensing, or another type of touchscreen. Other types of devices can beused to interact with the user. For example, feedback provided to theuser can be any form of sensory feedback. Input from the user can bereceived in any form, including acoustic, speech, or tactile input. Inaddition, a computer can interact with the user by sending documents toand receiving documents from a client computing device that is used bythe user.

The term “graphical user interface,” or “GUI,” can be used in thesingular or the plural to describe one or more graphical user interfacesand each of the displays of a particular graphical user interface.Therefore, a GUI can represent any graphical user interface, includingbut not limited to, a web browser, a touch screen, or a command lineinterface (CLI) that processes information and efficiently presents theinformation results to the user. In general, a GUI can include aplurality of user interface (UI) elements, some or all associated with aweb browser, such as interactive fields, pull-down lists, and buttons.These and other UI elements can be related to or represent the functionsof the web browser.

Implementations of the subject matter described in this specificationcan be implemented in a computing system that includes a back-endcomponent, for example, as a data server, or that includes a middlewarecomponent, for example, an application server, or that includes afront-end component, for example, a client computer having a graphicaluser interface or a Web browser through which a user can interact withan implementation of the subject matter described in this specification,or any combination of one or more such back-end, middleware, orfront-end components. The components of the system can be interconnectedby any form or medium of wireline or wireless digital data communication(or a combination of data communication), for example, a communicationnetwork. Examples of communication networks include a local area network(LAN), a radio access network (RAN), a metropolitan area network (MAN),a wide area network (WAN), Worldwide Interoperability for MicrowaveAccess (WIMAX), a wireless local area network (WLAN) using, for example,802.11 a/b/g/n or 802.20 (or a combination of 802.11x and 802.20 orother protocols consistent with the present disclosure), all or aportion of the Internet, another communication network, or a combinationof communication networks. The communication network can communicatewith, for example, Internet Protocol (IP) packets, Frame Relay frames,Asynchronous Transfer Mode (ATM) cells, voice, video, data, or otherinformation between network addresses.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of what can beclaimed, but rather as descriptions of features that can be specific toparticular implementations. Certain features that are described in thisspecification in the context of separate implementations can also beimplemented, in combination, in a single implementation. Conversely,various features that are described in the context of a singleimplementation can also be implemented in multiple implementations,separately, or in any sub-combination. Moreover, although previouslydescribed features can be described as acting in certain combinationsand even initially claimed as such, one or more features from a claimedcombination can, in some cases, be excised from the combination, and theclaimed combination can be directed to a sub-combination or variation ofa sub-combination.

Particular implementations of the subject matter have been described.Other implementations, alterations, and permutations of the describedimplementations are within the scope of the following claims as will beapparent to those skilled in the art. While operations are depicted inthe drawings or claims in a particular order, this should not beunderstood as requiring that such operations be performed in theparticular order shown or in sequential order, or that all illustratedoperations be performed (some operations can be considered optional), toachieve desirable results. In certain circumstances, multitasking orparallel processing (or a combination of multitasking and parallelprocessing) can be advantageous and performed as deemed appropriate.

Moreover, the separation or integration of various system modules andcomponents in the previously described implementations should not beunderstood as requiring such separation or integration in allimplementations, and it should be understood that the described programcomponents and systems can generally be integrated together in a singlesoftware product or packaged into multiple software products.

Furthermore, any claimed implementation is considered to be applicableto at least a computer-implemented method; a non-transitory,computer-readable medium storing computer-readable instructions toperform the computer-implemented method; and a computer systemcomprising a computer memory interoperably coupled with a hardwareprocessor configured to perform the computer-implemented method or theinstructions stored on the non-transitory, computer-readable medium.

What is claimed is:
 1. A computer-implemented method for analyzingreflection seismic data, the method comprising: sorting the reflectionseismic data into sets of data sections acquired from cross-spreadgathers, each cross-spread gather corresponding to a source line of shotsources from which seismic impulses were transmitted, and a receiverline of recording instruments where the set of data sections for theparticular cross-spread gather were recorded; performing dataenhancement on the sets of data sections to generate enhanced traces foreach set of data section acquired from a particular cross-spread gather,the performing step includes: applying, for each set of data sectionsacquired from the particular cross-spread gather, forward normal-moveout(NMO) corrections such that arrival times of primary reflection eventsin the particular set of data sections become more flat; estimating, forthe particular set of data sections, beamforming parameters including asummation aperture; beamforming, for the particular set of data sectionsand according to the beamforming parameters, to generate enhanced tracesthat combine contributions from original traces in the sets of datasections, each enhanced trace azimuthally surrounded by one or moreoriginal traces in the sets of data sections, and each enhanced tracelocated from the summation aperture; and applying inverse NMOcorrections to the enhanced traces such that temporal rearrangements dueto the forward NMO corrections are undone, and performing additionaldata processing steps based on the enhanced traces leading to animproved image of the subsurface. Please know that stacking andmigration of the enhanced traces themselves not necessarily lead tobetter seismic images. However, other prestack data processingalgorithms preceding the stacking/migration can significantly benefitfrom the enhanced traces, and at the end lead to improved images of thesubsurface.
 2. The method of claim 1, wherein the enhanced traces aregenerated by performing data enhancement in parallel.